﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SIMCRepositorio;
using SIMCObjetoNegocio;

namespace SIMCReglasNegocio
{
    public class ExistePortafolioAsociado : IReglaDeNegocio
    {
        private IRepositorioPortafolioUsuario m_Repositorio;
        private PortafolioDeUsuario m_PortafolioUsuario;

        public ExistePortafolioAsociado(IRepositorioPortafolioUsuario p_Repositorio, PortafolioDeUsuario p_Objeto)
        {
            m_PortafolioUsuario = p_Objeto;
            m_Repositorio = p_Repositorio;
        }

        public string MensajeError
        {
            get
            {
                if (m_PortafolioUsuario.UserName.Length > 0 && m_PortafolioUsuario.IdPortafolio > 0)
                    return string.Format("El usuario {0} ya se encuentra asociado al portafolio {1}",
                        m_PortafolioUsuario.UserName, m_PortafolioUsuario.IdPortafolio);
                else
                    return string.Format("El usuario ya está asociado al portafolio");
            }
        }

        public bool Validar()
        {
            return m_Repositorio.BuscarPortafolioUsuario(m_PortafolioUsuario.Id) == null;            
        }
    }
}
